package com.wzdigit.wms.raw.domain.mid;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;

/**
 * 采购订单信息
 * @TableName WMS_PO_HEADER
 */
@TableName(value ="WMS_PO_HEADER")
@Data
@Accessors(chain = true)
@KeySequence(value = "WMS_PO_HEADER_SEQ", clazz = Integer.class)
public class PoHeader implements Serializable {
    /**
     * 采购订单表头ID
     */
    @TableId(value = "PO_HEADER_ID",type = IdType.INPUT)
    private Long poHeaderId;

    /**
     * 采购订单号
     */
    @TableField(value = "PO_NO")
    private String poNo;

    /**
     * 采购订单类型
     */
    @TableField(value = "PO_TYPE")
    private Long poType;

    /**
     * 货主，客户主数据中 客户类型=货主，取客户ID
     */
    @TableField(value = "OWNER")
    private Long owner;

    /**
     * 订单创建时间
     */
    @TableField(value = "PO_CREATE_TIME")
    private Date poCreateTime;

    /**
     * 预期到货时间段：开始时间
     */
    @TableField(value = "EXPECT_ARRIVE_TIME1")
    private Date expectArriveTime1;

    /**
     * 预期到货时间段：结束时间
     */
    @TableField(value = "EXPECT_ARRIVE_TIME2")
    private Date expectArriveTime2;

    /**
     * 工厂代码(组织)，如5500,5520
     */
    @TableField(value = "FACTORY")
    private String factory;

    /**
     * 供应商
     */
    @TableField(value = "VENDOR_ID")
    private Long vendorId;

    /**
     * 销售订单，批次号
     */
    @TableField(value = "SO_NO")
    private String soNo;

    /**
     * 数据来源
     */
    @TableField(value = "DATA_SOURCE")
    private String dataSource;

    /**
     * PO释放状态
     */
    @TableField(value = "RELEASE_STATUS")
    private Long releaseStatus;

    /**
     * PO参考信息1
     */
    @TableField(value = "PO_REF1")
    private String poRef1;

    /**
     * PO参考信息2
     */
    @TableField(value = "PO_REF2")
    private String poRef2;

    /**
     * PO参考信息3
     */
    @TableField(value = "PO_REF3")
    private String poRef3;

    /**
     * PO参考信息4
     */
    @TableField(value = "PO_REF4")
    private String poRef4;

    /**
     * PO参考信息5
     */
    @TableField(value = "PO_REF5")
    private String poRef5;

    /**
     * 用户自定义字段1
     */
    @TableField(value = "UDF1")
    private String udf1;

    /**
     * 用户自定义字段2
     */
    @TableField(value = "UDF2")
    private String udf2;

    /**
     * 用户自定义字段3
     */
    @TableField(value = "UDF3")
    private String udf3;

    /**
     * 用户自定义字段4
     */
    @TableField(value = "UDF4")
    private String udf4;

    /**
     * 用户自定义字段5
     */
    @TableField(value = "UDF5")
    private String udf5;

    /**
     * 备注
     */
    @TableField(value = "COMMENTS")
    private String comments;

    /**
     * 状态
     */
    @TableField(value = "STATUS")
    private Long status;

    /**
     * 创建人
     */
    @TableField(value = "CREATE_USER")
    private String createUser;

    /**
     * 创建时间
     */
    @TableField(value = "CREATE_TIME")
    private Date createTime;

    /**
     * 修改人
     */
    @TableField(value = "MODIFY_USER")
    private String modifyUser;

    /**
     * 修改时间
     */
    @TableField(value = "MODIFY_TIME")
    private Date modifyTime;

    /**
     * 采购组织
     */
    @TableField(value = "PURCHASE_ORG")
    private String purchaseOrg;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}